#ifndef _FONT_MANAGER_H_
#define _FONT_MANAGER_H_

#ifdef _WIN32
#pragma once
#endif

#include <map>
#include <string>

#include "font.h"

using std::map;
using std::string;

class CFontManager
{
public:
    static CFontManager *getInstance();

    CFont *createFont(string szFontName, string szPath);
    CFont *createFont(string szKeyName, string szFontName, string szPath);
    CFont *createFont(string szKeyName, string szFontName, string szPath, 
        int nSize);

    CFont *getFont(string szFontName) const;
    bool hasFont(string szFontName) const;

private:
    map<string, CFont*> m_arrFonts;

    ~CFontManager();
};

#endif